package com.smartwebx.ha.dal.feature.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectProvider;

import com.smartwebx.ha.dal.config.OracleConfigInfo;
import com.smartwebx.ha.dal.feature.sqlprovider.FeatureAllWaterMapperProvider;
import com.smartwebx.ha.dal.feature.sqlprovider.FeatureRsvrMapperProvider;
import com.smartwebx.ha.dal.inter.water.IFeatureFlowDao;
import com.smartwebx.ha.dal.inter.water.IFeatureWaterDao;
import com.smartwebx.ha.dal.usebean.FeatureHighLow;
import com.smartwebx.ha.dal.usebean.FeatureWaterPeriod;

/**
 * 特征库 水库
 * 
 * @author zhangxi
 * 
 */
public interface FeatureRsvrMapper extends IFeatureFlowDao, IFeatureWaterDao {
	@SelectProvider(type = FeatureAllWaterMapperProvider.class, method = "getMoreYearStatHighLowFlowSQL")
	public List<FeatureHighLow> getMoreYearStatHighLowFlow(String stcd);

	@Select("SELECT MXRZ maxz,MXTM maxzTm,MNRZ minz,MNTM minzTm,AVRZ avgz,YR avgTm FROM "
			+ OracleConfigInfo.FEATURE_NAME
			+ ".TZ_MRZ_T WHERE STCD=#{stcd} AND PRD=13")
	public List<FeatureHighLow> getMoreYearStatHighLowWater(@Param("stcd") String stcd);

	@SelectProvider(type = FeatureRsvrMapperProvider.class, method = "getPeriodAvgContrastWaterSQL")
	public List<FeatureWaterPeriod> getPeriodAvgContrastWater(@Param("stcd") String stcd,
			@Param("startMonth") Integer startMonth,@Param("endMonth") Integer endMonth,@Param("startDay") Integer startDay,
			@Param("endDay") Integer endDay);
}
